<?php

/**
 * @author Fabio Ferraz 
 * @copyright 2011
 */

ob_start();


require("relatoriosModel.php");
require("relatoriosView.php");
require("controller.php");

class relatoriosController extends Controller 
{
	
	private $model; 
	private $view; 

     public function __construct() 
    { 
        // instanciamos os objetos 
        $this->model = new relatoriosModel(); 
        $this->view= new relatoriosView(); 
       
	}
	
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirContratoLocacao()
	{ 	
	   
        //Obtendo usuários
		$venda = $this->model->selecionarRelatorios();
        $produtos = $this->model->selecionarProdutos();
		//Listando usuários
		$this->view->listar($venda,$produtos);
	 
	}
    
    
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirTermosLocacao()
	{ 	
	   
        //Obtendo usuários
		$resultado = $this->model->selecionarPromissoriasAcessorios();
		//Listando usuários
       
		$this->view->termos($resultado);
	 
	}
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirPromissorias()
	{ 	
	   
        //Obtendo usuários
		$resultado = $this->model->selecionarPromissorias();
        
		
		$this->view->exibirPromissoria($resultado);
    
   
	 
	}
    
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirPromissoriasAcessorios()
	{ 	
	   
        //Obtendo usuários
		$resultado = $this->model->selecionarPromissoriasAcessorios();
        
		$this->view->exibirPromissoriaAcessorios($resultado);
    
   
	 
	}
    
    
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirRecibo()
	{ 	
	   
        //Obtendo usuários
        $id = $this->model->getFormData('id');
		
        $resultado = $this->model->selecionarMovimentacao($id);
        
        
        $this->view->exibirRecibo($resultado);
	 
	}
    
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirRelatorioVendas()
	{ 	
	   session_start();
       //tipo 1 locação e 2 venda
       if ($this->model->getFormData('tipo')){
         $_SESSION['tipo'] = $this->model->getFormData('tipo'); 
       }
       
       
       //Obtendo Vendas
       $resultado = $this->model->selecionarVendas();
       
       
       if ($_SESSION['tipo'] == 1){
         $GLOBALS['info']['titulo'] = 'Locação';
       }else{
         $GLOBALS['info']['titulo'] = 'Vendas';
       }
       
	   
       switch($_SESSION['filtro']){
            
            case 1: $um = 'selected';
                    $dois ='';
            break;    
            
            case 2: $dois = 'selected';
                    $Um = '';
            break;
         
         }
       
	   $GLOBALS['info']['filtro'] = "<select name='filtro' id='filtro' class='busca'>
                               		  <option value='0'></option>
                                      <option value='1' $um>Com entrada</option>
                               		  <option value='2' $dois>Sem entrada</option>
                                 	 </select> ";
        
	   
       
       	
	   $this->view->relatorioVendas($resultado);
	 
	}
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirRelatorioProdutos()
	{ 	
	   
       //Obtendo Vendas
       $resultado = $this->model->selecionarHistoricoProdutos();
       
       
       //monta o combo do filtro
        $GLOBALS['info']['categorias'] = $this->model->combo_box('categorias','categorias','descricao','codigo_categoria');
           
	   $this->view->relatorioProdutos($resultado);
	 
	}



   /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
  
      public function exibirRelatorioSaida()
      {   
         
           //Obtendo Vendas
           $resultado = $this->model->selecionarPrevisaoSaida();
           $this->view->relatorioSaidas($resultado);
       
      }


      /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
  
      public function exibirRelatorioDevolucao()
      {   
         
           //Obtendo Vendas
           $resultado = $this->model->selecionarDevolucao();
           $this->view->relatorioDevolucoes($resultado);
       
      }
    
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirRelatorioComissao()
	{ 	
	   
       session_start();
       
       if ($this->model->getFormData('tipo')){
          
          $_SESSION['tipo'] = $this->model->getFormData('tipo');  
       }
      
       //Obtendo Vendas
       $resultado = $this->model->selecionarVendasComissao();
       
       $GLOBALS['info']['atendentes'] = $this->model->combo_box('atendentes','sis_usuarios s INNER JOIN sis_grupo_acesso_usuario g ON g.CODIGO_USUARIO = s.CODIGO_USUARIO','s.nome','s.codigo_usuario','g.CODIGO_GRUPO_ACESSO > 1','',$_SESSION['atendentes']);
       
       if ($_SESSION['tipo'] == 1){
         $GLOBALS['info']['titulo'] = 'Locação';
       }else{
         $GLOBALS['info']['titulo'] = 'Vendas';
       }
       
       if ($_SESSION['tipo'] == 1){
        
           if ($resultado){
            
               //validando venda canceladas
               $canceladas = $this->model->selecionarVendasCanceladas($resultado);
               
               //reseta o objeot
               $resultado->rewind();
           }
       
	        $this->view->relatorioComissao($resultado,$canceladas);
       
       }else{
        
            $this->view->relatorioComissaoVenda($resultado);
       }
	   
	}
    
    
    
    /**
     * relatoriosController::telaInicial()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function exibirRelatorioComissaoVendas()
	{ 	
	   
       session_start();
       $_SESSION['tipo'] = '2';
       
       //Obtendo Vendas
       $resultado = $this->model->selecionarVendasComissao();
       
       $GLOBALS['info']['atendentes'] = $this->model->combo_box('atendentes','sis_usuarios s INNER JOIN sis_grupo_acesso_usuario g ON g.CODIGO_USUARIO = s.CODIGO_USUARIO','s.nome','s.codigo_usuario','g.CODIGO_GRUPO_ACESSO > 1','',$_SESSION['atendentes']);
       	
	   $this->view->relatorioComissao($resultado,$canceladas);
	 
	}
    
    
    /**
     * relatoriosController::salvar()
     * 
     * tela inicial
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function salvar()
	{ 	
	 
      $chave = $this->model->salvar("Vendas","CODIGO_VENDA","");

      $json["sucesso"] = "1";
      $json["mensagem"] = "Usuario cadastrado com sucesso!"; 
      $json["redirecionar"] = "relatorios.php";
      
	  echo json_encode($json);
	}
    
    
    
    /**
     * relatoriosController::excluir()
     * 
     * tela para exclusao padrao
     * 
     * @access public
     * @author Fabio Ferraz Rufino <fabiorufinosd@yahoo.com.br>
     * @since v1.0
     */
	
	public function excluir()
	{ 	
	 
        $chavePrimaria = $this->model->getFormData("id");

		$this->model->excluir("Vendas", $chavePrimaria);


		$json["sucesso"] = "1";
        $json["mensagem"] = "Dado removido com sucesso!"; 
        $json["redirecionar"] = "relatorios.php";
	   
        echo json_encode($json);
      
	 
	}
    
    
     /**
	 *ProdutoController::formulario()
	 *
	 * Exibe formulario para a manipulação de dados .
	 *
	 * @access public
	 * @author ScaFold
	 * @since  v1.0
	 */
	public function formulario()
	{
        
		$id = $this->model->getFormData("id");

        $GLOBALS["info"]["CODIGO_VENDA"]=$id;
        
		//Exibindo formulário
		$this->view->formulario();

	}
    
    
    
    /**
	 *ProdutoController::obterDados()
	 *
	 * Obtém os dados do grupo de acesso no formato JSON
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
    public function obterDadosRelatorios(){
        
		$id = $this->model->getFormData("id");
        
        
		if (!empty($id))
		{
			$json=$this->model->selecionarDados("Vendas", $id);
              
            echo json_encode($json);
		}

	}
    
}

?>